home *** CD-ROM | disk | FTP | other *** search
/ Windows 6-Pak - Disc 4 / Windows 6-Pak (InfoMagic) (Disc 4) (1999).ISO / Text-Chat-Addins / C-Script.exe / Sysfiles / Remote / www.mrc < prev    next >
Encoding:
Text File  |  1998-05-14  |  18.0 KB  |  310 lines

  1. ;C-Script v5.0 ⌐ 1998 C-Team. All rights reserved.
  2. ;Configure at your own risk
  3. ;C-Script Browser
  4.  
  5. ;==========
  6. ;WWW Browser
  7. ;==========
  8.  
  9. ;Events
  10. on 1:close:@:if ($target == @c-scriptábrowser) { sockclose cswww | unset %www.* | .timerwww off }
  11. on 1:sockread:cswww {
  12.   if ($sockerr > 0) { www.notice Error retrieving  $+ $www.add $+  | set %www.err 1 | return }
  13.   .timerwww 1 60 www.err Error in retrieving  $+ $www.add $+ 
  14.   if (%www.gt == $null) {
  15.     :nextread
  16.     sockread %www.read
  17.     if ($sockbr == 0) { return }
  18.     if (Content-Type: isin $gettok(%www.read,1,32)) { set %www.type $gettok(%www.read,2,32) }
  19.     if (Content-length: isin $gettok(%www.read,1,32)) { set %www.size $gettok(%www.read,2,32) }
  20.     if (Location: isin $gettok(%www.read,1,32)) {
  21.       if (%twww.count == 1) { unset %twww.count | www.err Error in retrieving  $+ $www.add $+  | halt }
  22.       set %twww.count 1
  23.       unset %www.add | sockclose cswww | www $gettok(%www.read,2-,32) | halt
  24.     }
  25.     if (%www.read == $null) {  goto next }
  26.     goto nextread
  27.     :next
  28.     set %www.gt yes | set %www.rcvd2 $sock(cswww).rcvd
  29.   }
  30.   if (%www.type == $null) { set %www.type text/html }
  31.   if (%www.type == text/html) {
  32.     :nextread2
  33.     sockread %www.read
  34.     if ($sockbr == 0) { return }
  35.     write "sysfiles\www\temp.html" %www.read
  36.     goto nextread2
  37.   }
  38.   if ($window(@c-scriptábrowser).x != $null) { window -n @C-Scriptábrowser }
  39.   if (%www.download == $null) {
  40.     .remove sysfiles\www\temp.tmp
  41.     wincheck @www.download -p +f @www.download $center(243,75) 243 75 comic sans ms 12
  42.     drawfill @www.download 15 15 0 0
  43.     drawrect -f @www.download 2 1 0 0 300 17
  44.     drawtext -o @www.download 0 arial 14 3 1 C-Script
  45.     drawx 183 45 51 18 @www.download Cancel
  46.     drawtext @www.download 1 arial 13 1 19 Downloading $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47)
  47.     drawx 185 2 15 14 @www.download nx | drawx 201 2 15 14 @www.download mxx | drawx 219 2 15 14 @www.download Xx
  48.     set %www.download 1 | set %www.time $ctime
  49.   }
  50.   :nextread3
  51.   sockread &www.read
  52.   bwrite "sysfiles\www\temp.tmp" -1 &www.read
  53.   if ($sockbr == 0) { return }
  54.   set %www.rcvd $sock(cswww).rcvd
  55.   if (%www.size == $null) { set %www.size Unknown } | if (%www.rcvd == $null) { set %www.rcvd Unknown }
  56.   drawrect -f @www.download 15 4 125 30 150 13 | set %www.time2 $calc($ctime - %www.time)
  57.   if (%www.size == unknown) && (%www.rcvd == unknown) { drawtext @www.download 1 arial 13 1 30 Size: %www.size Total received: %www.rcvd }
  58.   if (%www.size == unknown) && (%www.rcvd != unknown) { drawtext @www.download 1 arial 13 1 30 Size: %www.size Total received: $kbyte($calc(%www.rcvd - %www.rcvd2)) ( $+ $round($calc($int($calc(%www.rcvd * .001)) / %www.time2),1) k sec) }
  59.   if (%www.size != unknown) && (%www.rcvd == unknown) { drawtext @www.download 1 arial 13 1 30 Size: $kbyte(%www.size) Total received: %www.rcvd }
  60.   if (%www.size != unknown) && (%www.rcvd != unknown) { drawtext @www.download 1 arial 13 1 30 Size: $kbyte(%www.size) Total received: $kbyte($calc(%www.rcvd - %www.rcvd2)) ( $+ $round($calc($int($calc(%www.rcvd * .001)) / %www.time2),1) k sec) }
  61.   if (%www.size isnum) && (%www.rcvd isnum) { progbar %www.size $calc(%www.rcvd - %www.rcvd2) @www.download 71 50 }
  62.   goto nextread3
  63. }
  64. on 1:sockopen:cswww {
  65.   if ($sockerr > 0) { .timerwww off | www.err Error retrieving  $+ $www.add $+  | set %www.err 1 | return }
  66.   .timerwww 1 60 www.err Error in retrieving  $+ $www.add $+ 
  67.   sockwrite -tn $sockname GET / $+ $gettok(%www.add,2,32) HTTP/1.0  $cr $+ $lf $+ $cr $+ $lf
  68. }
  69. on 1:sockclose:cswww:www.end
  70. ;Help
  71. alias wwwhelp {
  72.   wincheck @C-ScriptáBrowser -l19 @C-ScriptáBrowser $center(634,380) 634 380 @C-ScriptáBrowser comic sans ms 12
  73.   loadbuf -p @c-scriptábrowser sysfiles\www\help.txt
  74. }
  75. ;Menu
  76. menu @www.download {
  77.   sclick {
  78.     if ($inrect($mouse.x,$mouse.y,185,2,15,14) == $true) { drawx2 185 2 15 14 @www.download | .timercl -m 1 200 window -n @www.download | .timerc2 -m 1 200 drawx 185 2 15 14 @www.download nx }
  79.     if ($inrect($mouse.x,$mouse.y,183,45,51,18) == $true) { drawx2 183 45 51 18 @www.download | .timercl -m 1 200 window -c @www.download | sockclose cswww | .timerwww off | www.notice Cancelled downloading  $+ $www.add $+ ... | unset %www.* }
  80.   }
  81. }
  82. menu @C-ScriptáBrowser {
  83.   dclick www.gourl
  84.   Load URL...:www $$?="Address:"
  85.   -
  86.   Bookmark(s)
  87.   . $+ $www.bkmrkadd $+ :www.bookmark %swww.bkmrk
  88.   .-
  89.   . $+ $www.rbh(1,bk) $+ :www.bkfile 1
  90.   . $+ $www.rbh(2,bk) $+ :www.bkfile 2
  91.   . $+ $www.rbh(3,bk) $+ :www.bkfile 3
  92.   . $+ $www.rbh(4,bk) $+ :www.bkfile 4
  93.   . $+ $www.rbh(5,bk) $+ :www.bkfile 5
  94.   . $+ $www.rbh(6,bk) $+ :www.bkfile 6
  95.   . $+ $www.rbh(7,bk) $+ :www.bkfile 7
  96.   . $+ $www.rbh(8,bk) $+ :www.bkfile 8
  97.   . $+ $www.rbh(9,bk) $+ :www.bkfile 9
  98.   . $+ $www.rbh(10,bk) $+ :www.bkfile 10
  99.   . $+ $www.rbh(11,bk) $+ :www.bkfile 11
  100.   . $+ $www.rbh(12,bk) $+ :www.bkfile 12
  101.   . $+ $www.rbh(13,bk) $+ :www.bkfile 13
  102.   . $+ $www.rbh(14,bk) $+ :www.bkfile 14
  103.   . $+ $www.rbh(15,bk) $+ :www.bkfile 15
  104.   . $+ $www.rbh(16,bk) $+ :www.bkfile 16
  105.   . $+ $www.rbh(17,bk) $+ :www.bkfile 17
  106.   . $+ $www.rbh(18,bk) $+ :www.bkfile 18
  107.   . $+ $www.rbh(19,bk) $+ :www.bkfile 19
  108.   . $+ $www.rbh(20,bk) $+ :www.bkfile 20
  109.   . $+ $www.rbh(21,bk) $+ :www.bkfile 21
  110.   . $+ $www.rbh(22,bk) $+ :www.bkfile 22
  111.   . $+ $www.rbh(23,bk) $+ :www.bkfile 23
  112.   . $+ $www.rbh(24,bk) $+ :www.bkfile 24
  113.   . $+ $www.rbh(25,bk) $+ :www.bkfile 25
  114.   . $+ $www.rbh(26,bk) $+ :www.bkfile 26
  115.   . $+ $www.rbh(27,bk) $+ :www.bkfile 27
  116.   . $+ $www.rbh(28,bk) $+ :www.bkfile 28
  117.   . $+ $www.rbh(29,bk) $+ :www.bkfile 29
  118.   Home ( $+ $www.rbh(home) $+ )
  119.   .Load:www $www.rbh(home)
  120.   .Set...:writeini sysfiles\www\settings.ini www home $$?="Address:"
  121.   Recent
  122.   . $+ $www.rbh(1,www) $+ :www.file n1
  123.   . $+ $www.rbh(2,www) $+ :www.file n2
  124.   . $+ $www.rbh(3,www) $+ :www.file n3
  125.   . $+ $www.rbh(4,www) $+ :www.file n4
  126.   . $+ $www.rbh(5,www) $+ :www.file n5
  127.   . $+ $www.rbh(6,www) $+ :www.file n6
  128.   . $+ $www.rbh(7,www) $+ :www.file n7
  129.   . $+ $www.rbh(8,www) $+ :www.file n8
  130.   . $+ $www.rbh(9,www) $+ :www.file n9
  131.   . $+ $www.rbh(10,www) $+ :www.file n10  
  132.   .-
  133.   .Clear:remini sysfiles\recent.ini www
  134.   -
  135.   Help:wwwhelp
  136.   Close:sockclose cswww | unset %www.* | .timerwww off | window -c @C-ScriptáBrowser
  137. }
  138. ;For dl'ing recent files
  139. alias www.file {
  140.   set %file $readini sysfiles\recent.ini www $1
  141.   www $replace(%file,$chr(32),/) | unset %file
  142. }
  143. ;Recent/homepage/bookmarks
  144. alias www.rbh {
  145.   if ($1 == home) { return $readini sysfiles\www\settings.ini www home }
  146.   if ($2 == www) {
  147.     if ($1 == 1) { unset %www.adds }
  148.     set %tmp1 n $+ $1
  149.     set %www.read $readini -n sysfiles\recent.ini $2 %tmp1
  150.     if ($findtok(%www.adds,%www.read,1,168) != $null || %www.read == $null) { unset %www.read | return }
  151.     else { set %www.adds %www.adds $+ $chr(168) $+ %www.read | return $www.add(%www.read) }
  152.   }
  153.   if ($2 == bk) {
  154.     if ($1 == 1) { unset %www.adds }
  155.     set %www.read $readini sysfiles\www\settings.ini bookmarks $1
  156.     if ($findtok(%www.adds,%www.read,1,168) != $null) { unset %www.read | return }
  157.     else { set %www.adds %www.adds $+ $chr(168) $+ %www.read | return $gettok(%www.read,2,169) }
  158.   }
  159. }
  160. ;Initiating browser
  161. alias www.initiate {
  162.   wincheck @C-ScriptáBrowser -l19 @C-ScriptáBrowser $center(634,380) 634 380 @C-ScriptáBrowser comic sans ms 12
  163.   if ($1 == $null) { wwwhelp }
  164.   else www $1
  165. }
  166. ;Loading a page
  167. alias www {
  168.   if (%www.add != $null) { sockclose cswww | unset %www.* | .timerwww off }
  169.   if ($window(@C-ScriptáBrowser).state != normal) { www.initiate $1 | halt }
  170.   set %www.add $1
  171.   clear @C-ScriptáBrowser | clear -l @C-ScriptáBrowser
  172.   titlebar @C-ScriptáBrowser
  173.   if (%www.add == $null) { set %www.add $?="Address:" }
  174.   set %www.add $www.parseadd(%www.add)
  175.   www.notice Now retrieving  $+ $www.add $+ ...
  176.   .timer 1 3 www.nxt
  177. }
  178. alias www.nxt {
  179.   if ($right($left(%www.add,3),2) == :\) {
  180.     if ($exists($replace(%www.add,$chr(32),\)) == $false) { www.err Error in retrieving  $+ $www.add $+ : File not found! | halt }
  181.     elseif ($right(%www.add,4) == .exe || $right(%www.add,4) == .zip || $right(%www.add,4) == .cab || $right(%www.add,4) == .gif || $right(%www.add,4) == .wav || $right(%www.add,4) == .mid || $right(%www.add,4) == .ini || $right(%www.add,4) == .txt || $right(%www.add,4) == .jpg) { set %www.type file | .copy " $+ $replace(%www.add,$chr(32),\) $+ " sysfiles\www\temp.tmp }
  182.     else { set %www.type text/html | .remove sysfiles\www\temp.html | .copy " $+ $replace(%www.add,$chr(32),\) $+ " sysfiles\www\temp.html | if %www.num == $null { set %www.num 1 } }
  183.     www.end
  184.   }
  185.   else { sockopen cswww $gettok(%www.add,1,32) 80 | .timerwww 1 60 www.err Error in retrieving  $+ $www.add $+  | if %www.num == $null { set %www.num 1 } }
  186. }
  187. alias www.add {
  188.   if ($1- != $null) {
  189.     if ($gettok($1-,2,32) != $null) { return $gettok($1-,2,32) @ $gettok($1-,1,32) }
  190.     else return $gettok($1-,1,32)
  191.   }
  192.   elseif ($gettok(%www.add,2,32) != $null) { return $gettok(%www.add,2,32) @ $gettok(%www.add,1,32) }
  193.   elseif ($gettok(%www.add,1,32) != $null) { return $gettok(%www.add,1,32) }
  194.   else return
  195. }
  196. ;Information to the user
  197. alias www.notice clear -l @C-ScriptáBrowser | clear @C-ScriptáBrowser | if ($window(@c-scriptábrowser).x != $null) { echo @C-ScriptáBrowser $$1- } | else echo -a  $+ $clr(info) $+ *** $$1- | return
  198. alias www.err window -c @www.download | unset %www.* | clear -l @C-ScriptáBrowser | clear @C-ScriptáBrowser | if ($window(@c-scriptábrowser).x != $null) { echo @C-ScriptáBrowser $$1- } | else echo -a  $+ $clr(info) $+ *** $$1- | sockclose cswww
  199. ;Parsing of address
  200. alias www.parseadd {
  201.   set %www.add $1
  202.   if (%www.add == $null) { return www.c-script.com }
  203.   if ($left($1,7) == http://) { set %www.add $mid(%www.add,8,100) }
  204.   if ($right($left(%www.add,3),2) == :\) { set %www.add $nofile(%www.add) $nopath(%www.add) } 
  205.   else { set %www.add $gettok(%www.add,1,47) $gettok(%www.add,2-,47) }
  206.   if (%www.add == $null) { return www.c-script.com }
  207.   else return %www.add
  208. }
  209. ;Retrieved file, now log, parse, and present
  210. alias www.end {
  211.   .timerwww off
  212.   if (%www.err == 1) { unset %www.* | halt }
  213.   addrec www %www.add
  214.   if (%www.type == text/html || %www.type == $null) { set %tmp sysfiles\www\ $+ %www.num $+ .html | if ($exists(%tmp) == $true) { .remove %tmp } | .rename sysfiles\www\temp.html %tmp | www.parse %www.num }
  215.   else { www.dlcomp | .window -c @www.download | .remove sysfiles\www\ $+ $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47) | .remove "sysfiles\www\ $+ $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47) $+ " | .rename "sysfiles\www\temp.tmp" "sysfiles\www\ $+ $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47) $+ " }
  216.   unset %www.*
  217. }
  218. ;Activates after a file has been downloaded
  219. alias www.dlcomp {
  220.   if ($1 == $null) { clear @c-scriptábrowser | echo -a  $+ $clr(info) $+ *** Finished downloading $mircdirsysfiles\www\ $+ $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47) | set %download sysfiles\www\ $+ $gettok($gettok(%www.add,2,32),$calc($count($gettok(%www.add,2,32),/) + 1),47) | yesno 'www.dlcomp yes' 'www.dlcomp no' 'Finished downloading $www.add do you wish to run it?' }
  221.   elseif ($1 == yes) { .run " $+ %download $+ " }
  222.   elseif ($1 == no) { halt }
  223.   else { echo -a  $+ $clr(info) $+ *** Finished downloading $1 | set %download $1 | yesno 'www.dlcomp yes' 'www.dlcomp no' 'Finished downloading $1 do you wish to run it?' }
  224. }
  225. ;Parsing of HTML (Algorithm slightly referenced from MarkP's Internet tools)
  226. alias www.parse {
  227.   unset %www.title %bkmrk.* | wincheck @C-ScriptáBrowser -l19 @C-ScriptáBrowser $center(634,380) 634 380 @C-ScriptáBrowser comic sans ms 12
  228.   if $1 != $null { set %www.num $1 }
  229.   else set %www.num 1
  230.   set %twww.file %www.num | set %www.count 0 | set %www.line $mircdirsysfiles\www\ $+ %www.num $+ .html | set %www.line $lines(%www.line)
  231.   :next
  232.   inc %www.count | if %www.count > %www.line goto end
  233.   set %www.ps $read -nl $+ %www.count sysfiles\www\ $+ %www.num $+ .html
  234.   set %www.ps ^ $+ $replace(%www.ps,><,>^<) $+ ^
  235.   set %www.ps $replace($replace($replace($replace(%www.ps,ALT=",>^<IMG_ALT "),<B>,),</B>,),href=",>12<A_HREF ")
  236.   set %www.ps $replace(%www.ps,>,<)
  237.   :next2
  238.   if $mid($gettok(%www.ps,2,60),1,6) == script || $mid($gettok(%www.ps,2,60),1,5) == style { set %www.script 1 }
  239.   if $gettok(%www.ps,2,60) == /script || $gettok(%www.ps,2,60) == /style { unset %www.script | goto next }
  240.   if %www.script == 1 { goto next }
  241.   if %www.title == 1 { set %www.t %www.t %www.ps }
  242.   if $gettok(%www.ps,2,60) == /title { set %swww.bkmrk $readini sysfiles\recent.ini www [ n [ $+ [ %www.num ] ] ] $+ ⌐ $+ $mid($gettok(%www.t,1,60),3,999) $+ á | if ($left($mid($gettok(%www.t,1,60),2,999),1) == ^) { titlebar @C-scriptáBrowser $mid($gettok(%www.t,1,60),3,999) } | else { titlebar @C-scriptáBrowser $mid($gettok(%www.t,1,60),2,999) } | unset %www.title | goto next }
  243.   if $gettok(%www.ps,2,60) == title { set %www.title 1 }
  244.   if (< !isin %www.ps) { if $remove($remove($remove($remove($remove(%www.ps,),),$chr(9)),^),) != $null && %www.a == $null && $remove($remove($remove($remove($remove(%www.ps,),),$chr(9)),^),) !isnum && $remove($remove($remove($remove($remove(%www.ps,),),$chr(9)),^),) != $chr(32) { echo @C-Scriptábrowser $remove($remove($replace($replace($replace($replace($replace($replace($replace($replace(%www.ps,","), ,$chr(160)),©,⌐),®,«),<,<),>,>),&,&),©,⌐),$chr(9)),^) } | unset %www.a | goto next }
  245.   if $left($gettok(%www.ps,2,60),6) == A_HREF { set %www.a $remove($gettok($remove($gettok(%www.ps,2,60),A_HREF "),1,32),") }
  246.   if $gettok(%www.ps,2,60) == /a && %www.a != $null {
  247.     if $gettok(%www.a,1,35) != $null && $left(%www.a,1) != $chr(35) { rline -l @c-scriptábrowser $next $gettok(%www.a,1,35) }
  248.     if $remove($remove($remove($remove($remove($gettok(%www.ps,1,60),),),$chr(9)),^),) isnum { set %www.ps 12 $+ %www.a $+  $gettok(%www.ps,3-,60) }
  249.     else set %www.ps $gettok(%www.ps,1,60) $+  $gettok(%www.ps,3-,60) | unset %www.a | goto next2
  250.   }
  251.   if $gettok($gettok(%www.ps,2,60),1,32) == IMG_ALT { set %www.ps $gettok(%www.ps,1,60) $+ (img) $+ $gettok($gettok(%www.ps,2,60),2,34) $+ (img) $gettok(%www.ps,3-,60) | goto next2 }
  252.   set %www.ps $gettok(%www.ps,1,60) $+ $gettok(%www.ps,3-,60)
  253.   goto next2
  254.   :end
  255.   unset %www.* | sline @C-ScriptáBrowser 15 | next 1
  256. }
  257. ;Bookmarking
  258. alias www.bookmark {
  259.   :top
  260.   if ($1 == $null) { www.notice Invalid parameters for adding a bookmark | unset %www.bkmrk* | halt }
  261.   set %www.bkmrk.title $gettok($1-,2,169)
  262.   set %www.bkmrk.site $gettok($1-,1,169)
  263.   if (%www.bkmrk.site == $null) { goto top }
  264.   if (%www.bkmrk.title == $null) { set %www.bkmrk.title $$?="Enter a name for this bookmark:" }
  265.   if ($len(%www.bkmrk.title) > 40) { set %www.bkmrk.title $mid(%www.bkmrk.title,1,40) $+ ... }
  266.   set %www.bkmrk.num $readini sysfiles\www\settings.ini bookmarks num | inc %www.bkmrk.num 1
  267.   if (%www.bkmrk.num == $null) || (%www.bkmrk.num !isnum) || (%www.bkmrk.num > 10) { writeini sysfiles\www\settings.ini bookmarks num 1 | set %www.bkmrk.num 1 }
  268.   else writeini sysfiles\www\settings.ini bookmarks num %www.bkmrk.num
  269.   writeini sysfiles\www\settings.ini bookmarks %www.bkmrk.num %www.bkmrk.site $+ ⌐ $+ %www.bkmrk.title
  270.   unset %www.bkmrk.*
  271. }
  272. ;Adding identifier for popup
  273. alias www.bkmrkadd if (%swww.bkmrk != $null) { return Add Bookmark }
  274. ;Returns the address of the specified bookmark
  275. alias www.bkfile {
  276.   set %www.bkmrk.info $readini sysfiles\www\settings.ini bookmarks $1
  277.   if (%www.bkmrk.info == $null) { www.notice Error in retrieving bookmark URL $1 | goto end }
  278.   if ($gettok(%www.bkmrk.info,1,169) == $null) { www.notice Error in retrieving bookmark URL $1 | goto end }
  279.   www $gettok(%www.bkmrk.info,1,169)
  280.   :end
  281.   unset %www.bkmrk.*
  282. }
  283. ;Loads webpage selected in the side listbox
  284. alias www.gourl {
  285.   set %www.gourl $sline(@c-scriptábrowser,1)
  286.   if ($left(%www.gourl,1) == $chr(35)) && (%bkmrk.num. [ $+ [ $mid(%www.gourl,2,1000) ] ] != $null) { sline @c-scriptábrowser %bkmrk.num. [ $+ [ $mid(%www.gourl,2,1000) ] ] | goto end }
  287.   if ($left(%www.gourl,7) == mailto:) { mail.initiate $mid(%www.gourl,8,1000) | goto end }
  288.   if ($left(%www.gourl,7) == http://) || ($left(%www.gourl,3) == www) { www $gettok(%www.gourl,1,35) | goto end }
  289.   if ($left(%www.gourl,1) == /) { set %www.gourl $mid(%www.gourl,2,1000) }
  290.   set %www.gourl.num $readini -n sysfiles\recent.ini www n1
  291.   if ($left(%www.gourl,1) == .) {
  292.     set %www.gourl.count 1- $+ $count(%www.gourl.num,/) | if ($right($left($gettok(%www.gourl.num,1,32),3),2) == :\) { set %www.gourl.num $gettok(%www.gourl.num,1,32) $+ $gettok($gettok(%www.gourl.num,2,32),%www.gourl.count,47) } | else { set %www.gourl.num $gettok(%www.gourl.num,1,32) $+ / $+ $gettok($gettok(%www.gourl.num,2,32),%www.gourl.count,47) }
  293.     set %www.gourl.count 1- $+ $calc($count(%www.gourl.num,/) - $count($gettok(%www.gourl,1,47),.) + 1) | set %www.gourl.num $gettok(%www.gourl.num,%www.gourl.count,47)
  294.     set %www.gourl $gettok(%www.gourl,2-,47) | goto next
  295.   }
  296.   if (/ isin $gettok(%www.gourl.num,2,32)) { set %www.gourl.count 1- $+ $count(%www.gourl.num,/) | if ($right($left($gettok(%www.gourl.num,1,32),3),2) == :\) { set %www.gourl.num $gettok(%www.gourl.num,1,32) $+ $gettok($gettok(%www.gourl.num,2,32),%www.gourl.count,47) } | else { set %www.gourl.num $gettok(%www.gourl.num,1,32) $+ / $+ $gettok($gettok(%www.gourl.num,2,32),%www.gourl.count,47) } }
  297.   else set %www.gourl.num $gettok(%www.gourl.num,1,32)
  298.   :next
  299.   set %www.gourl.sep 1- $+ $count(%www.gourl,/)
  300.   if ($gettok(%www.gourl,%www.gourl.sep,47) == $right(%www.gourl.num,$len($gettok(%www.gourl,%www.gourl.sep,47)))) {
  301.     set %www.gourl.sep $calc($count(%www.gourl,/) + 1) $+ -
  302.     set %www.gourl $gettok(%www.gourl,%www.gourl.sep,47)
  303.   }
  304.   if ($right($left($gettok(%www.gourl.num,1,32),3),2) == :\) { set %www.gourl %www.gourl.num $+ $gettok(%www.gourl,1,35) }
  305.   else { set %www.gourl %www.gourl.num $+ / $+ $gettok(%www.gourl,1,35) }
  306.   www %www.gourl
  307.   :end
  308.   unset %www.gourl*
  309. }
  310.